package com.dto;

import com.fasterxml.jackson.annotation.JsonIgnoreProperties;
import com.fasterxml.jackson.annotation.JsonProperty;

@JsonIgnoreProperties(ignoreUnknown = true)
public class FieldsDTO {
	
	@JsonProperty
	private String summary;
	
	@JsonProperty
	private String timespent;

	@JsonProperty
	private IssueTypeDTO issuetype;
	
	@JsonProperty
	private ReporterDTO reporter;

	@JsonProperty
	private String updated;

	@JsonProperty
	private String created;
	
	@JsonProperty
	private String description;

	@JsonProperty
	private PriorityDTO priority; 
	
	//TODO: Need more complex json , in our example this field is null
	
	@JsonProperty
	private SubtasksDTO[] subtasks;

	
	@JsonProperty
	private StatusDTO status;

	@JsonProperty
	private ParentDTO parent;

	@JsonProperty
	private ProjectDTO project;
	
	@JsonProperty(value="comment")
	private CommentDTO comments;

	@JsonProperty
	private ResolutionDTO resolution;

	@JsonProperty(value = "resolutiondate")
	private String resolutionDate;

	@JsonProperty(value = "dueDate")
	private String duedate;
	

	//TODO: Make WatchesDTO[] and fetch each one
	
	@JsonProperty
	private WatchesDTO watches;
	
	@JsonProperty
	private AuthorDTO assignee;

	@JsonProperty
	private AttachmentDTO[] attachment;

	public String getSummary() {
		return summary;
	}

	public void setSummary(String summary) {
		this.summary = summary;
	}

	public String getTimespent() {
		return timespent;
	}

	public void setTimespent(String timespent) {
		this.timespent = timespent;
	}

	public IssueTypeDTO getIssuetype() {
		return issuetype;
	}

	public void setIssuetype(IssueTypeDTO issuetype) {
		this.issuetype = issuetype;
	}

	public ReporterDTO getReporter() {
		return reporter;
	}

	public void setReporter(ReporterDTO reporter) {
		this.reporter = reporter;
	}

	public String getUpdated() {
		return updated;
	}

	public void setUpdated(String updated) {
		this.updated = updated;
	}

	public String getCreated() {
		return created;
	}

	public void setCreated(String created) {
		this.created = created;
	}

	public String getDescription() {
		return description;
	}

	public void setDescription(String description) {
		this.description = description;
	}

	public PriorityDTO getPriority() {
		return priority;
	}

	public void setPriority(PriorityDTO priority) {
		this.priority = priority;
	}

	public SubtasksDTO[] getSubtasks() {
		return subtasks;
	}

	public void setSubtasks(SubtasksDTO[] subtasks) {
		this.subtasks = subtasks;
	}

	public StatusDTO getStatus() {
		return status;
	}

	public void setStatus(StatusDTO status) {
		this.status = status;
	}

	public ParentDTO getParent() {
		return parent;
	}

	public void setParent(ParentDTO parent) {
		this.parent = parent;
	}

	public ProjectDTO getProject() {
		return project;
	}

	public void setProject(ProjectDTO project) {
		this.project = project;
	}

	public CommentDTO getComments() {
		return comments;
	}

	public void setComments(CommentDTO comment) {
		this.comments = comment;
	}

	public ResolutionDTO getResolution() {
		return resolution;
	}

	public void setResolution(ResolutionDTO resolution) {
		this.resolution = resolution;
	}

	public String getResolutionDate() {
		return resolutionDate;
	}

	public void setResolutionDate(String resolutionDate) {
		this.resolutionDate = resolutionDate;
	}

	public String getDuedate() {
		return duedate;
	}

	public void setDuedate(String duedate) {
		this.duedate = duedate;
	}

	public WatchesDTO getWatches() {
		return watches;
	}

	public void setWatches(WatchesDTO watches) {
		this.watches = watches;
	}

	public AuthorDTO getAssignee() {
		return assignee;
	}

	public void setAssignee(AuthorDTO assignee) {
		this.assignee = assignee;
	}

	public AttachmentDTO[] getAttachment() {
		return attachment;
	}

	public void setAttachment(AttachmentDTO[] attachment) {
		this.attachment = attachment;
	}
	
	

	
}
